<?php
/**
 * Classe de usuários padrão.
 * Com este modelo o sistema delogin e gerenciamento de usuários já fica pronto, não necessitando de nada para funcionar.
 *
 * @author Cristiano Moreira Gomes
 */
class Usuario extends Modelo {
	public function setTableDefinition() {
        $this->hasColumn('nome',	'string', 150);
        $this->hasColumn('email', 	'string', 150);
        $this->hasColumn('login',  	'string', 12);
        $this->hasColumn('senha',  	'string', 33);
        parent::setTableDefinition();
    }

    public function setUp() {
        $this->actAs('SoftDelete');
        
        $this->hasMany(
	    	"UsuarioGrupos as Grupos",
	    	 Array("local" => "fk_usuario",
	    	 	   "foreign" => "fk_usuario_grupos",
	    	 	   'refClass' => 'UsuarioGrupoRelacao'
	   	));
    }

    public function get_nome(){
    	return $this->nome;
    }
	public function get_email(){
    	return $this->email;
    }
	public function get_login(){
    	return $this->login;
    }
	public function get_senha(){
    	return $this->senha;
    }

	public function set_nome($nome){
    	$this->nome = $nome;
    }
	public function set_email($email){
    	$this->email = $email;
    }
	public function set_login($login){
    	$this->login = $login;
    }
	public function set_senha($senha){
    	$this->senha = $senha;
    }

    public function get_grupos(){
    	return $this->Grupos;
    }

    public function EncriptaSenha(){
    	$sha1 = sha1($this->senha);
    	$this->set_senha(md5($sha1));
    }
}